package design.p2_abstractFactory;

import design.p1_factoryMethod.c1_nomalFactory.Sender;

/**
 * @ClassName: Java
 * @description:
 * @author: zxf
 * @create: 2021-06-17 17:18
 **/
public interface Provider {
    public Sender produce();
}

// 对于静态工厂，当有新的实例加入，则需要修改代码，违反了开闭原则。
// 所以需要把生产实例的方法抽象出来，每个实例对应一个工厂类。

// -----总结-----
// 其实这个模式的好处就是，如果你现在想增加一个功能：发及时信息，则只需做一个实现类，实现Sender接口，同时做一个工厂类，
// 实现Provider接口，就OK了，无需去改动现成的代码。这样做，拓展性较好！